#ifndef QQ_NAVIGATION_VIEW
#define QQ_NAVIGATION_VIEW

#include <qobject.h>
#include <qlistview.h>
#include <qabstractitemmodel.h>
#include <qheaderview.h>
#include <qevent.h>

#include <ElaScrollBar.h>

#include "QQNavigationDelegate.h"

class QQNavigationView : public QListView
{
	Q_OBJECT
public:
	explicit QQNavigationView(QWidget* parent = nullptr);
	~QQNavigationView();
signals:
	void mousePress(const QModelIndex& index);
	void mouseRelease(const QModelIndex& index);
	void mouseDoubleClick(const QModelIndex& index);

protected:
	virtual void mousePressEvent(QMouseEvent* event) override;
	virtual void mouseReleaseEvent(QMouseEvent* event) override;
	virtual void mouseDoubleClickEvent(QMouseEvent* event) override;
};

#endif // QQ_NAVIGATION_VIEW
